QA 往往會因為公司規模大小、產品性質、公司對品質要求等等… 都會有所不同
也就是說不同公司就會有不同的 QA,所要求的工作內容、技能,都不會太一樣
QA 這角色
⇒ 它不是管理產品、管理團隊的角色,主要職責也都是對產品提供建議與改善
⇒ 它也不是純開發角色,寫程式的部分可能更多是自動化測試,但這也都是基於已經開發完成的產品為基底去撰寫
但上述會這樣說主要是因為 QA 需要同時擁有足夠的 軟技能 及 硬技能
此處我將 程式 較無關的領域,歸類成軟技能。
e.g. 溝通、社交、解決問題方式等
圖片引用 此處
因為 QA 需要大量的跨部門溝通。
溝通的對象大多是 RD、PM、設計,進一步也有可能會對應到 客服、行銷、老闆 等等,所以對應到不同部門時,溝通方式要會不一樣。
往往只要是針對產品需求上的異動、時程的安排 ,都需要進行大量的溝通與討論,都要說明清楚風險高低 及 問題所在,才能讓其他人理解利害關係。
圖片引用 此處
因為 QA 職責是 預防錯誤, 開發建議導向
所以對於產品上的有任何建議,都需要透過談判力與團隊之間進行溝通,使他人能夠認同 QA 的說法。
所以給予建議時,可以整理以下內容
如果可以提供實際例子去說明,更為有說服力。
主要是對產品品質上的細心程度,又或者可以說是…吹毛求疵(?)XDDD
這些事情都是需要透過足夠細心的挖掘,找出需要改善的地方
讓產品可以越來越好,品質越來越高,使用者體驗越來越好
對待產品的角度,往往都是「如果是使用者….我覺得這個操作…我覺得這個體驗…」
圖片以用 此處
當一個問題出現的時候,身為 QA 就必須要打破沙鍋問到底的心態才行。
怎麼會出現這個 Bug?是因為某服務異常嗎?是在開發時沒注意到嗎?是在需求規劃時就遺漏的規則嗎?等等…
請注意!這邊只要是針對問題本身尋求解法,並非是要找出出錯的人來究責
因為只有真正體解問題核心,才能有效的解決問題
不然下次仍會再發生類似的事情
也就是為了有效的降地產品風險,也才能徹底預防類似問題頻繁出現
圖片引用 此處
或許這點可能是所有工程師都需具備的能力,但我覺得一位好的 QA 更加需要這項能力。
主要原因是因為QA很常要做很多種不同的測試,我們最常說的自動化測試,其實主要核心也是希望能減少人力測試所消耗的時間成本、提高產品的穩定度。
但也並非只有寫程式自動化才是王道,其實只要能夠善用手邊的工具有效解決問題,都是一種聰明的作法。
小小經驗分享
曾經遇過產品有個很繁瑣計算公式的驗證項目,如果手動驗證,每次都要花很多時間。
那時候我的想法就是寫個自動化測試,讓程式幫我計算,最後我也如願的做出來了。
但那時候有位同事用了 google sheet 的方式,將公式都打好,只要確定好數量、金額,也一樣能算出來
雖然用程式的方式以日後長期維護的自動化框架來說比較好
但用 google sheet 也是一個非常聰明的做法,在操作上也很簡單易懂,甚至是讓非工程師的人也都能夠輕鬆使用